package com.alameda.service.menu;

import com.alameda.common.commonpent.mp.BaseService;
import com.alameda.menu.dto.AdMenuDTO;
import com.alameda.menu.vo.AdMenuVO;
import com.alameda.pojo.menu.AdMenuDO;
import com.baomidou.mybatisplus.core.metadata.IPage;

import java.util.List;

/**
 * 菜单 业务逻辑层
 *
 * @author Lv
 * @date 2024/06/23
 */
public interface AdMenuService extends BaseService<AdMenuDO> {
    /**
     * 读取菜单树
     *
     * @return
     */
    List<AdMenuVO> loadMenu();

    /**
     * 读取菜单信息列表
     *
     * @param adMenuDTO 菜单信息
     * @return
     */
    IPage<AdMenuVO> listMenuInfo(AdMenuDTO adMenuDTO);

    /**
     * 导出excel
     *
     * @param adMenuDTO 菜单信息
     */
    void export(AdMenuDTO adMenuDTO);

    /**
     * 导出菜单json
     */
    void exportMenu();

    /**
     * 删除菜单
     *
     * @param idList 菜单id集合
     * @return
     */
    Boolean removeByIdList(List<Long> idList);
}
